package com.authine.cloudpivot.web.api.dao;

import com.authine.cloudpivot.web.Utils.MyMapper;
import com.authine.cloudpivot.web.api.vo.ProjectTaskIssue;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
import java.util.Map;

@Repository
public interface ProjectTaskIssueMapper extends MyMapper<ProjectTaskIssue> {


    /**
     * @Description :删除已存在的数据
     * @author : Liun
     * @date : 2021/3/5
     */
    Integer deleteProjectTaskIssueExist(@Param("project_name")String project_name,@Param("QC_task_name")String QC_task_name);


    /**
     * @Description : 获取项目QC任务名称
     * @param ： beginTime
     * @param ： endTime
     * @author : Liun
     * @date : 2021/3/5
     */
    List<Map<String,String>> getProjectQcNames(@Param("beginTime")String beginTime,@Param("endTime")String endTime);



    /**
     * @Description :修改完成比例
     * @param ： tableName
     * @param ： beginTime
     * @param ： endTime
     * @author : Liun
     * @date : 2021/3/17
     */

    List<Map> getTaskSendList(@Param("tableName")String tableName,@Param("beginTime")String beginTime,@Param("endTime")String endTime);
    void updateTaskSendList(@Param("tableName")String tableName,@Param("map")Map map);


    /**
     * @Description : 修改项目任务新增走访完成率和审核完成率
     * @param ： beginTime
     * @param ： endTime
     * @author : Liun
     * @date : 2021/3/17
     */
    List<Map> getQCTaskList(@Param("beginTime")String beginTime,@Param("endTime")String endTime);

    /**
     *  获取门店数
     * @param projectName
     * @param qCTaskName
     * @return
     */
    Integer getQCTaskStoreCount(@Param("projectName")String projectName,@Param("qCTaskName")String qCTaskName);

    /**
     *  获取任务统计
     * @param projectName
     * @param qCTaskName
     * @return
     */
    Map<String,Integer> getTaskStatistics(@Param("projectName")String projectName,@Param("qCTaskName")String qCTaskName);

    void updateQCTaskList(@Param("map")Map map);


    /**
     * @Description : 获取QC项目任务下发未审核，待跟进数据
     * @param ：
     * @author : Liun
     * @date : 2021/3/23
     */
    List<Map> getQCProjectTaskIssueList();

    List<Map> getQCTaskIssueList(@Param("beginTime")String beginTime,@Param("endTime")String endTime);

    /**
     * @description: 获取门店列表
     * @method: getStoresList
     * @date: 2022/1/18 18:02
     * @author: zyj
     * @param subjectName
     * @return: java.util.List<java.util.Map < java.lang.String, java.lang.String>>
     */
    List<Map<String, String>> getStoresList(@Param("id")String subjectName);
}